home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-13
/
me_cd22.zip
/
DOC.ZIP
/
README
< prev
next >
Wrap
Text File
|
1992-04-27
|
7KB
|
192 lines
-*-text-*-
The is the README for ME2. It contains full source for:
ME2 (the Mutt Editor v2.2)
MC2 (the Mutt Compiler v2.1)
a Compute Server (v1.0)
various libraries
Mutt extensions to ME2
Released:
February 29, 1992 (beta)
April 12, 1992
This release is targeted at Unix and MS-DOS. I've tried to write the
code as portablly as possible (in C and ANSI C) so hopefully it should
be "easy" to port to other platforms that support C.
This stuff is released as GNU Ware - use, share and enjoy.
What is ME2?
---- -- ----
ME2 is a medium-small, portable, extendable Emacs' like editor that
is known to compile and run on HP-UX (Series 800, 700 and 300), BSD Unix
(Sun, Apollo, DEC, etc), IBM AIX, OSF/POSIX (HP and DEC) and
MS-DOS/PC-DOS (IBM PCs and compatibles). Standalone, ME2 is pretty
mundane - you need to customize it to make full use of it. A compiled
language is provided for this as well as lots of example programs: a C
mode, paren matching, a visual towers of hanoi, incremental searching,
programmers calculator, mark rings, multi file search (and replace)
picture mode (from GNU Emacs), gomoku (from GNU Emacs) and lots more.
Other features include the ability to have concurrent processes (such as
make) running in a buffer (Unix only).
How to Compile and Install ME2
--- -- ------- --- ------- ---
Compiling
----------
Edit util/os.h so it matches your OS.
Edit mc2/mm.h so that it matches your OS.
Edit me2/config.h so that it matches what you what ME2 to support.
Edit me2/compile so that it matches your OS and config.h.
Edit ./compile for the CFLAGS you want.
Type "./compile" in this directory and it will compile all the
subdirectories.
Notes:
I've run the compile scripts (and tested the results) on:
HP-UX 8.0 series 300 (K&R "-O" and Ansi C "-Aa -O")
HP-UX 7.05 series 300 (K&R "-O")
HP-UX 7.0 series 800 (K&R "-O" and Ansi C "-Aa -O")
HP OSF/1 1.0 Operating System A.01.00 ("" - DON'T use -O)
Apollo 68k SR10.4 BSD (psudeo Ansi C "-O" and Ansi C "-O -Aansi").
Make sure to set DOMAIN_OS in util/os.h.
The compiles will complain (lots) about varargs and select. You
can ignore these. I'm pretty sure the varargs complaints are
groundless. If you get tired of the messages, you can put
"-U__STDC__" in the compile flags.
Sun SparcStation 2, SunOS Release 4.1.1 ("-O")
IBM RS/6000, AIX Version 3.1 ("-O"). Make sure you use -lcurses
in me2/compile and AIX_OS in util/os.h.
DEC 3100 OSF/1 ("-O"). Not much testing done.
DECstation 5000/200 ULTRIX V4.2 ("-O"). You may need to set
FOPEN_BINARY (me2/config.h). On this version of ULTRIX, "rb" is
OK.
They should run on other Unix boxes but I can't test everything.
Let me know if you find problems.
Unixes that kinda work:
UNIX_System_V 4.1.0 V4ES i386 x86at (a 486 running a SYS V unix).
To get this to compile:
- change the #includes of time.h to sys/time.h (./me2/process.c,
./me2/unixio.c, ./comserver/comserver.c).
- in comserver/compile and me2/compile, add "-lsocket -lnsl" to
the cc line so the socket code will link.
- or just turn off the compute server (in me2/config.h) and
don't worry about the socket code. See why below.
Problem areas:
- getcwd() (called from util/canonize.c) gets an access error.
Maybe its the way my system is set up. To get around this,
you have to run me2 setuid root. Not a very good idea.
- Some of the termcaps don't seem right. Use a "xterm" TERM var
for xterms, "vt100" doesn't work.
- The compute server doesn't work very well with SYS V signals -
ME2 will get a signal (from the compute server) while signals
turned off and dump (not a problem with BSD like signals).
Maybe linking in /usr/ucblib/libucb.a would work (BSD
signals). Nope - seemed to fix the signal problem but broke
the LED lib and filename completion. I really shouldn't use
signals for interprocess communication.
Unixes not supported:
Apollo SysV (probably any "real" Sys V Unix)
Sockets are not supported so you need to turn off the compute
server (in config.h) and don't compile the comserver directory.
unixio.c has compile problems:
Change #include <time.h> to <sys/time.h> (why?).
termio.h doesn't seem to be supported so try USE_BSDIO.
select() needs to be updated to use the "new" structures. I
would do this but its yet another #ifdef and I'm getting tired
of them.
Other than that, the other directories seem to compile and work.
Your best bet is just to compile under BSD.
If you fix this stuff, send the the changes so I can add them to
my copies.
MS-DOS:
The compile scripts won't run but should give you an idea of what
needs to be done. See below.
John Burnell has ported ME2 to PC-DOS:
Compiler: JPI Topspeed C ("__TSC__").
ME2:
Use the large memory model (1 meg code and data). Remember to
compile the libraries that way also.
Use FASTVIDEO (me2/config.h)
Build files (see me2/compile):
terminal=
termlib=
io=misc/pcio.c
keymap=misc/pckmap.c
fileio=fileio.c
process=
fastvideo=misc/pcfv.c
spam =
The util directory:
fxpand.c uses some Lattice C calls that may not be in other
Cs. If this is the case for your compiler, check out
util/misc/ibmdir.c and util/misc/ibmdir.h to see if they
will work. If so, move all files in misc/ to util/ and add
them to the utils library.
Other programs:
The other programs can use the small code, large data model.
The compute server is not supported.
OS/2 (port by John Burnell):
Compiler: JPI Topspeed C ("__TSC__").
OS/2 1.3 on a FAT drive, not sure whether it will support HPSF
filenames (probably not since it uses the MSDOS code to parse
filenames, although it may cope with long filenames). Certainly
it does nothing with EAs at present.
To compile it, configure the system for MSDOZ (util/os.h), except
replace the DOS files with the corresponding OS/2 ones viz:
./util replace ibmdir.c with os2dir.c
./me2/misc replace pcfile.c with os2filio.c
replace pcio.c with os2io.c
don't use pcfv.c
I'd like to keep a list of systems that have compiled and run ME2 and
those systems that don't. Please send me info if your system is not
listed. Also send bug reports/fixes.
Installing
----------
Use the install script (as root) or:
Copy me2/me2 and mc2/mc2 to /usr/local/bin or to a directory in your
PATH.
Copy mutt2/*.mco to /usr/local/lib/me2 or where you specified in
config.h. Or leave them where they are and use the ME2 environment
variable (which is what I do). See "load" in me2/doc/me2.doc for more
about this var.
As a quick test, run me2, hit Escape x load <return> ganoi <return> and
use 4 disks. If you get the towers of hanoi, things are probably
working pretty good.
Read all the documentation (see ./contents for a list).
Customizing
-----------
Read the "Customizing me2.mut" section in me2/doc/package.doc.
Author
------
Craig Durland (503) 750-3354
3419 SW Knollbrook, Corvallis, OR 97333
craig@cv.hp.com